/*******************************************************************************
 * Classe APropos : Classe qui affiche un écran de rensignements
 *
 ******************************************************************************/

package tp2;

import java.awt.*;
import java.awt.event.*;
import javax.swing.*;

/**
 *
 * @author W&G
 */
public class APropos extends JPanel{

    private Fenetre fenetre;// La fenêtre du programme
    private JPanel pnlConteneur = new JPanel();//Panneau conteneur
    private JPanel pnlPrincipal = 
            new JPanel(new GridLayout(3,1)); // Panneau principal
    private JPanel pnlRetour = 
            new JPanel(); // Panneau qui contient le bouton Retour
    private JLabel txtAPropos = 
            new JLabel("Design et création par W&G corp."); // Texte À propos
    private JLabel txtTitre = new JLabel("A propos :"); // Texte du titre
    private JButton btnRetour = new JButton("Retour"); // Bouton Retour
    private boolean retour = 
            false; // True si l'écran renvoie au jeu, false au menu principal


            // Constructeur du panneau À Propos
    public APropos(Fenetre fenetre)
    {
        this.fenetre = fenetre; // Relie à la fenêtre
        txtTitre.setHorizontalAlignment(
                SwingConstants.CENTER); // Centre le titre

        // Couleur du texte
        txtTitre.setForeground(Color.CYAN);
        txtAPropos.setForeground(Color.CYAN);

        // Couleur du fond
        pnlPrincipal.setBackground(fenetre.getFond());
        pnlConteneur.setBackground(fenetre.getFond());
        pnlRetour.setBackground(fenetre.getFond());

        // Ajout des panneaux et des composantes
        pnlPrincipal.add(txtTitre);
        pnlPrincipal.add(txtAPropos);
        pnlRetour.add(btnRetour);
        pnlPrincipal.add(pnlRetour);
        pnlConteneur.add(pnlPrincipal);

        btnRetour.addActionListener(new 
                BoutonPresse()); // Ajout de l'ActionListener

        this.add(pnlConteneur);

    }

    // Permet de déterminer si le menu renverra au jeu (true) ou non (false)
    public void setRetour(boolean retour) {
        this.retour = retour;
    }

    class BoutonPresse implements ActionListener
    {
        public void actionPerformed(ActionEvent ae)
        {
            if(ae.getSource() == btnRetour)
            {
                if (retour) {
                    fenetre.afficherJeu(); // Retourne au jeu
                } else {
                    fenetre.afficherMenuPrincipal(); // Retourne au menu
                }
            }
        }
    }

}
